Chapter 1 Regulaer Language

字符集 Σ,字符集上的所有有限字符串 Σ
空字符串 ε,我们一般约定 εΣεΣΣε=Σ{ε}
Σ 上的语言 AΣ 的一个子集,我们可以定义 Σ 上字符串的连接操作并以集合乘法的形式拓展到 P(Σ) 上得到语言之间的连接操作 AB={abaA,bB} 和 Kleene 闭包 A={a1anaiA,nN}

确定性有限自动机 DFA 是五元组 (Q,Σ,δ,q0,F),q0Q,FQ,δ:Q×ΣQ

非确定性有限自动机 NFA 是五元组 (Q,Σ,δ,q0,F),q0Q,FQ,δ:Q×ΣεP(Q)

NFA 和 DFA 的等价性

正则语言被定义为可以被 DFA 接受的语言。语言 A 是正则语言,存在 DFA M 识别 A,存在 NFA M 识别 A,这三个命题等价。

接下通过正则表达式正面地描述正则语言的组成结构。Σ 上的一个语言 A 被正则表达式描述当且仅当下面任一成立

广义非确定性有限自动机 GNFA 是五元组 (Q,Σ,δ,qstart,qaccept),要求转移边接受的字符串必须能被某个正则表达式描述 δ:(Q{qaccept})×(Q{qstart})R

GNFA 和 NFA 的等价性

GNFA 可以通过 "状态消去" 操作得到一个等价的但是状态数更少边标签信息更加密集的 GNFA

Σ 上,语言 A 是正则语言当且仅当存在一个正则表达式描述它

泵引理

Myhill Nerode 定理